package repoDAO;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Vector;

import javax.persistence.*;

@Entity
@Table(name="clientes")
public class ClienteDO implements Serializable{
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	
	@Id
	private Integer nroDoc;
	@Column
	private Integer nroObraSocial;
	@Column
	private Integer planGimnasio;
	@Column
	private String nombre;
	@Column
	private String apellido;
	private Date fechaNacimiento;
	@Column
	private String sexo;
	@Column
	private String domicilio;
	@Column
	private String telefono;

	@ManyToMany
	@JoinTable(name="claseCliente",joinColumns={@JoinColumn(name = "nroDoc")},
			inverseJoinColumns = {@JoinColumn(name = "idClase")})
	private List <ClaseDO> clases;
	
	public ClienteDO (){
		
	}

	public Integer getNroDoc() {
		return nroDoc;
	}
	public void setNroDoc(Integer nroDoc) {
		this.nroDoc = nroDoc;
	}
	public Integer getNroObraSocial() {
		return nroObraSocial;
	}
	public void setNroObraSocial(Integer nroObraSocial) {
		this.nroObraSocial = nroObraSocial;
	}
	public Integer getPlanGimnasio() {
		return planGimnasio;
	}
	public void setPlanGimnasio(Integer planGimnasio) {
		this.planGimnasio = planGimnasio;
	}
	public String getNombre() {
		return nombre;
	}
	public void setNombre(String nombre) {
		this.nombre = nombre;
	}
	public String getApellido() {
		return apellido;
	}
	public void setApellido(String apellido) {
		this.apellido = apellido;
	}
	public String getSexo() {
		return sexo;
	}
	public void setSexo(String sexo) {
		this.sexo = sexo;
	}
	public String getDomicilio() {
		return domicilio;
	}
	public void setDomicilio(String domicilio) {
		this.domicilio = domicilio;
	}
	public String getTelefono() {
		return telefono;
	}
	public void setTelefono(String telefono) {
		this.telefono = telefono;
	}
	public ArrayList<ClaseDO> getClases() {
		return (ArrayList<ClaseDO>) clases;
	}
	public void setClases(ArrayList<ClaseDO> clases) {
		this.clases = clases;
	}
	public Date getFechaNacimiento() {
		return fechaNacimiento;
	}


	public void setFechaNacimiento(Date fechaNacimiento) {
		this.fechaNacimiento = fechaNacimiento;
	}
	
	public ClienteDO(Integer nroDoc, Integer nroObraSocial,
			Integer planGimnasio, String nombre, String apellido, String sexo,
			String domicilio, String telefono, Date fechaNac) {
		super();

		this.nroDoc = nroDoc;
		this.nroObraSocial = nroObraSocial;
		this.planGimnasio = planGimnasio;
		this.nombre = nombre;
		this.apellido = apellido;
		this.sexo = sexo;
		this.domicilio = domicilio;
		this.telefono = telefono;
		this.fechaNacimiento = fechaNac;
		this.clases = clases;
	}
	@Override
	public String toString() {
		return "ClienteDO [nroDoc=" + nroDoc
				+ ", nroObraSocial=" + nroObraSocial + ", planGimnasio="
				+ planGimnasio + ", nombre=" + nombre + ", apellido="
				+ apellido + ", sexo=" + sexo + ", domicilio=" + domicilio
				+ ", telefono=" + telefono + ", clases=" + clases + "]";
	}
	
	

}
